#include <iostream>
using namespace std;

class geomShape
{
public:
  virtual void move() = 0;
  virtual void show() = 0;
};

class shapeCircle: public geomShape
{
public:
  void show()
  {
    cout << "Show circle" << endl;
  }
  void move()
  {
    cout << "Move circle" << endl;
  }
};

class shapeSquare: public geomShape
{
 void show()
  {
    cout << "Show square" << endl;
  }
  void move()
  {
    cout << "Move square" << endl;
  }
};

int main()
{
  
  geomShape * gs = new shapeCircle;
  gs->move();
  gs->show();
  geomShape * gs1 = new shapeSquare;
  gs1->move();
  gs1->show();
  return 0;
}
